const Warehouse = require('../models/warehouseModel');

// 创建仓库
exports.createWarehouse = async (req, res) => {
    try {
        const result = await Warehouse.create(req.body);
        res.status(200).json({ message: '创建成功', id: result.insertId });
    } catch (error) {
        console.error('创建仓库失败：', error);
        res.status(500).json({ message: '服务器错误', error });
    }
};

// 获取所有仓库
exports.getWarehouses = async (req, res) => {
    try {
        const data = await Warehouse.getAll();
        res.status(200).json(data);
    } catch (error) {
        console.error('获取仓库失败：', error);
        res.status(500).json({ message: '服务器错误', error });
    }
};

// 根据 ID 获取仓库
exports.getWarehouseById = async (req, res) => {
    try {
        const id = req.params.id;
        const data = await Warehouse.getById(id);
        if (!data) return res.status(404).json({ message: '未找到仓库' });
        res.status(200).json(data);
    } catch (error) {
        console.error('获取仓库失败：', error);
        res.status(500).json({ message: '服务器错误', error });
    }
};

// 更新仓库
exports.updateWarehouse = async (req, res) => {
    try {
        const id = req.params.id;
        const result = await Warehouse.update(id, req.body);
        res.status(200).json({ message: '更新成功', result });
    } catch (error) {
        console.error('更新仓库失败：', error);
        res.status(500).json({ message: '服务器错误', error });
    }
};

// 删除仓库（软删除）
exports.deleteWarehouse = async (req, res) => {
    try {
        const id = req.params.id;
        const result = await Warehouse.remove(id);
        res.status(200).json({ message: '删除成功', result });
    } catch (error) {
        console.error('删除仓库失败：', error);
        res.status(500).json({ message: '服务器错误', error });
    }
};
